// HSS.Threading.ITimerService.cs
// ----------------------------------------------------------------------------
// Licensed under the MIT license
// http://www.opensource.org/licenses/mit-license.html
// ----------------------------------------------------------------------------
// HighSpeed-Solutions, LLC
// Copyright (c) 2001-2010
// ----------------------------------------------------------------------------
// File:       ITimerService.cs
// Author:     HSS\gbanta
// Created:    08/12/2010
// Modified:   12/04/2010
// ----------------------------------------------------------------------------
namespace HSS.Threading
{
    /// <summary>
    /// The interface that a class can implement, that hosts one or more <see cref="HSS.Threading.Timer"/>s
    /// </summary>
    public interface ITimerService
    {
        /// <summary>
		/// The method called by a <see cref="HSS.Threading.Timer"/> when the timer has ticked
		/// <para>
		/// <b>NOTE:</b> This method callback is not threadsafe.
		/// </para>
        /// </summary>
		/// <param name="sourceTimer">The source <see cref="HSS.Threading.Timer"/></param>
        void OnTick(Timer sourceTimer);
    }
}